#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Modulos 
import sys, gtk, pygame, utils, objetos, math
from pygame.locals import *

# Constantes

# Clases
class Lamparita(pygame.sprite.Sprite):
    def __init__(self, x, y):
        pygame.sprite.Sprite.__init__(self)
        self.sonido = pygame.mixer.Sound("sounds/eureka.ogg")
        self.image = utils.load_image("images/lamparita_chica.png", True)
        self.rect = self.image.get_rect()
        self.rect.centerx = x
        self.rect.centery = y
        self.sonido.set_volume(0.1)   
        self.flag_sonido = True

# ---------------------------------------------------------------------
	
def dibujar(screen,cursor_picture, clock):
    salir = 0
    background_image = utils.load_image('images/fondo6.png')

    #boton de la flecha para continuar
    btn_adelante = objetos.BotonAdelante()
    btn_atras = objetos.BotonAtras()

    #texto superior derecho que indica el numero de clase
    clase2, clase2_rect = utils.texto_clase("Clase 6", 750*utils.RES, 15*utils.RES)
    titulo1, titulo1_rect = utils.textodream("CONGRESODE IDEAS AMBIENTALES"    ,    	280*utils.RES, 60*utils.RES, 30, color=(0, 0, 255))


    bt1 = utils.BloqueTexto(22)
    bt1.agregarParrafo('''Hoy es el Congreso de Ideas Ambientales en el que cada equipo presentará su proyecto. Tan importante como presentarlo claramente, es prestar atención a los otros equipos. Por un lado, porque es una muestra de respeto por su trabajo y esfuerzo. Pero además, porque a ellos, probablemente, se les habrán ocurrido ideas interesantes y originales. Así que al escucharlos, seguramente, podrán aprender cosas nuevas.''', 
	70, 360, 260 )

    bt1l, bt1lrect = bt1.obtener_gui(False)

    pizarron = utils.load_image('images/clase6_pizarron.png', True)
    pizarron_rect = (300,80)

    lamparita = Lamparita(500*utils.RES, 80*utils.RES)

    frame = 0
    while salir == 0:
    
    	# Pump GTK messages.
		while gtk.events_pending():
			gtk.main_iteration()
			
		for eventos in pygame.event.get():
			if eventos.type == QUIT:
				sys.exit(0)
			elif eventos.type == pygame.VIDEORESIZE:
			   pygame.display.set_mode(eventos.size, pygame.RESIZABLE)	
			elif eventos.type == MOUSEBUTTONDOWN:
				mx, my = pygame.mouse.get_pos()
				if btn_adelante.rect.collidepoint(mx, my):
					salir = -1
					btn_adelante.sonido.play()	
				elif btn_atras.rect.collidepoint(mx, my):
					salir = -1
					btn_atras.sonido.play()	


		# Realiza la animacion del texto	
		screen.blit(background_image, (0, 0))
		screen.blit(clase2, clase2_rect)
		screen.blit(titulo1, titulo1_rect)


		if frame <= 30:
			pizarron_rect = (300-frame)*utils.RES , 80
		elif frame <= 60:
			pizarron_rect = (270+frame-30)*utils.RES, 80
		elif frame <= 90:
			pizarron_rect = (300+frame-60)*utils.RES, 80
		elif frame <= 120:
			pizarron_rect = (330-(frame-90))*utils.RES, 80
		else:
			pizarron_rect = 300*utils.RES, 80

		if frame == 200:
			frame = 0

		screen.blit(pizarron, pizarron_rect)

		for nl in range (0,len(bt1l)):
			screen.blit(bt1l[nl], bt1lrect[nl])

		screen.blit(btn_adelante.image, btn_adelante.rect)
		screen.blit(btn_atras.image, btn_atras.rect)
		screen.blit(cursor_picture, pygame.mouse.get_pos())
		pygame.display.flip()

		frame = frame + 1
		# Try to stay at 30 FPS
		clock.tick(30)

    return salir


# This function is called when the game is run directly from the command line:
# ./TestGame.py 
def main():
	
	pygame.init()
	screen = pygame.display.set_mode((int(800*utils.RES), int(520*utils.RES)), pygame.RESIZABLE) #pygame.display.get_surface() #

	# Fake a Sugar cursor for the pyGame canvas area
	pygame.mouse.set_cursor((8,8),(0,0),(0,0,0,0,0,0,0,0),(0,0,0,0,0,0,0,0))
	cursor_picture = pygame.image.load('images/standardcursor.png')
	cursor_picture.convert_alpha() 
	clock = pygame.time.Clock()
	dibujar(screen,cursor_picture,clock)
 
if __name__ == '__main__':
   main()
